package cn.matezk.cloud.service;

import cn.hutool.json.JSONObject;
import cn.matezk.cloud.beans.PaymentNotify;
import cn.matezk.cloud.beans.PaymentOrderRequest;
import cn.matezk.cloud.dto.PaymentOrderDto;
import cn.matezk.cloud.model.ChargeStandard;
import cn.matezk.cloud.model.PaymentOrder;
import cn.matezk.cloud.vo.PaymentOrderDetailVo;
import com.github.pagehelper.PageInfo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface IPaymentOrderService {
    JSONObject order(PaymentOrderRequest paymentOrder, HttpServletRequest request);
    PageInfo<PaymentOrder> query(PaymentOrderDto paymentOrderDto);
    List<PaymentOrderDetailVo> detail(String orderId);
    void notify(PaymentNotify notify) throws InterruptedException;
    List<ChargeStandard> chargeStandard();
    JSONObject transfer(HttpServletRequest request);
}
